Searching has become such an important feature of applications and operating systems for computer users. Even more so, it has turned into a highly profitable sector within the computing marketplace. On the one hand, advertisers are buying keywords and/or paying a premium for a desirable listing position when certain search terms are entered. On the other hand, consumers are primarily focused on the quality of the search and often select the search application or engine based on its past performance or reputation.
Most commonly, users initiate text searches to look for specific content on the Internet, on their network, or on their local PC. A search request can be submitted in a variety of formats. The user can use keywords, a phrase, or any combination of words depending on the content he/she is seeking and the location of the search. The task of a search engine is to retrieve documents that are relevant to the user's query. When several documents exist that relate to the same or similar terms, there must be some technique in place to present them to the user in an order that reflects the degree of their relevance to the query and to the user. Thus, ranking the retrieved documents may be the most challenging task in information retrieval. Since most users typically only look at the first few results at the top of the list (returned by the search engine), it has become increasingly important to achieve high accuracy for these results.
Conventional ranking systems continue to strive to produce good rankings but remain problematic. This is due in part to the massive number of documents that may be returned in response to a query. To put the problem into perspective, there are approximately 25 billion documents (e.g., websites, images, URLs) currently on the Internet or Web. Thus, it is feasible that thousands if not millions of documents may be returned in response to any one query. Despite attempts made by the current ranking systems to accurately rank such large volumes of documents, the top results may still not be the most relevant to the query and/or to the user. This occurs for several reasons. One reason may be that because such conventional ranking systems may try to improve low ranking results at the expense of highly ranked results, the relevance of the top returned results may be decreased. A second possible reason may be that using a single ranking algorithm to solve the whole problem (for all possible queries) may be too restrictive. Consequently, there remains a need to improve the rankings of retrieved items while minimizing the expense to the ranking system's performance.